package com.lagou.homework3.no2;

/**
 * 编程获取两个指定字符串中的最大相同子串。
 *  如： s1="asdafghjka", s2="aaasdfg" 他们的最大子串为"asd"
 */
public class MaxValue {
    public static void main(String[] args) {
        //定义两个字符串
        String s1 = "asdafghjka";
        String s2 = "aaasdfg";
        //定义一个收集结果的变量
        String temp="";
        //提示： 将短的那个串进行长度依次递减的子串与较长的串比较。
        for (int i = 0; i <s2.length(); i++) {//从0开始，循环s2的长度
            for (int j = 0; j <=i; j++) {
                String substring = s2.substring(j, s2.length()-i+j);//从小的字符串开始，从左向右移位比较
                if (s1.contains(substring)) {//如果包含并且当前的变量值长度比之前所找到的变量值得长度大，则取当前变量值
                    if(temp.length()<substring.length()) {
                        temp=substring;
                        System.out.println("符合条件的最大相同子串为："+temp);
                    }
                }
            }

        }
    }
}
